home *** CD-ROM | disk | FTP | other *** search
- package java.util;
-
- public class StringTokenizer implements Enumeration {
- private int currentPosition;
- private int maxPosition;
- private String str;
- private String delimiters;
- private boolean retTokens;
-
- public StringTokenizer(String var1, String var2, boolean var3) {
- this.currentPosition = 0;
- this.str = var1;
- this.maxPosition = var1.count;
- this.delimiters = var2;
- this.retTokens = var3;
- }
-
- public StringTokenizer(String var1, String var2) {
- this(var1, var2, false);
- }
-
- public StringTokenizer(String var1) {
- this(var1, " \t\n\r", false);
- }
-
- private void skipDelimiters() {
- while(true) {
- if (!this.retTokens && this.currentPosition < this.maxPosition) {
- String var1 = this.delimiters;
- char var2 = this.str.charAt(this.currentPosition);
- if (var1.indexOf(var2, 0) >= 0) {
- ++this.currentPosition;
- continue;
- }
- }
-
- return;
- }
- }
-
- public boolean hasMoreTokens() {
- while(true) {
- if (!this.retTokens && this.currentPosition < this.maxPosition) {
- String var1 = this.delimiters;
- char var2 = this.str.charAt(this.currentPosition);
- if (var1.indexOf(var2, 0) >= 0) {
- ++this.currentPosition;
- continue;
- }
- }
-
- if (this.currentPosition >= this.maxPosition) {
- return false;
- }
-
- return true;
- }
- }
-
- public String nextToken() {
- while(true) {
- if (!this.retTokens && this.currentPosition < this.maxPosition) {
- String var1 = this.delimiters;
- char var2 = this.str.charAt(this.currentPosition);
- if (var1.indexOf(var2, 0) >= 0) {
- ++this.currentPosition;
- continue;
- }
- }
-
- if (this.currentPosition >= this.maxPosition) {
- throw new NoSuchElementException();
- }
-
- int var4;
- for(var4 = this.currentPosition; this.currentPosition < this.maxPosition; ++this.currentPosition) {
- String var5 = this.delimiters;
- char var3 = this.str.charAt(this.currentPosition);
- if (var5.indexOf(var3, 0) >= 0) {
- break;
- }
- }
-
- if (this.retTokens && var4 == this.currentPosition) {
- String var6 = this.delimiters;
- char var7 = this.str.charAt(this.currentPosition);
- if (var6.indexOf(var7, 0) >= 0) {
- ++this.currentPosition;
- }
- }
-
- return this.str.substring(var4, this.currentPosition);
- }
- }
-
- public String nextToken(String var1) {
- this.delimiters = var1;
- return this.nextToken();
- }
-
- public boolean hasMoreElements() {
- return this.hasMoreTokens();
- }
-
- public Object nextElement() {
- return this.nextToken();
- }
-
- public int countTokens() {
- int var1 = 0;
-
- for(int var2 = this.currentPosition; var2 < this.maxPosition; ++var1) {
- while(!this.retTokens && var2 < this.maxPosition) {
- String var3 = this.delimiters;
- char var4 = this.str.charAt(var2);
- if (var3.indexOf(var4, 0) < 0) {
- break;
- }
-
- ++var2;
- }
-
- if (var2 >= this.maxPosition) {
- break;
- }
-
- int var6;
- for(var6 = var2; var2 < this.maxPosition; ++var2) {
- String var7 = this.delimiters;
- char var5 = this.str.charAt(var2);
- if (var7.indexOf(var5, 0) >= 0) {
- break;
- }
- }
-
- if (this.retTokens && var6 == var2) {
- String var8 = this.delimiters;
- char var9 = this.str.charAt(var2);
- if (var8.indexOf(var9, 0) >= 0) {
- ++var2;
- }
- }
- }
-
- return var1;
- }
- }
-